From 79ae7e51e1bed02e5c1036c6169113a457a38a06 Mon Sep 17 00:00:00 2001 From: "kfraser@localhost.localdomain" Date: Mon, 12 Mar 2007 14:55:02 +0000 Subject: [PATCH] linux: Adjust memory allocation condition in netback to reduce memory pressure on Xen and avoid unnecessarily stalling receives. Signed-off-by: Jan Beulich --- linux-2.6-xen-sparse/drivers/xen/netback/netback.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/linux-2.6-xen-sparse/drivers/xen/netback/netback.c b/linux-2.6-xen-sparse/drivers/xen/netback/netback.c index b05e3000e3..7e0c340832 100644 --- a/linux-2.6-xen-sparse/drivers/xen/netback/netback.c +++ b/linux-2.6-xen-sparse/drivers/xen/netback/netback.c @@ -110,6 +110,7 @@ static unsigned int alloc_index = 0; static inline unsigned long alloc_mfn(void) { + BUG_ON(alloc_index == 0); return mfn_list[--alloc_index]; } @@ -552,6 +553,7 @@ static void net_rx_action(unsigned long unused) *(int *)skb->cb = nr_frags; if (!xen_feature(XENFEAT_auto_translated_physmap) && + !((netif_t *)netdev_priv(skb->dev))->copying_receiver && check_mfn(nr_frags + 1)) { /* Memory squeeze? Back off for an arbitrary while. */ if ( net_ratelimit() ) -- 2.30.2